The use of virtualization software technology has become widespread. Virtualized computing environments are no longer limited to large corporate and governmental enterprises. Indeed, virtualized computing environments are being used more frequently in small- and medium-sized businesses, where virtualized computing has enabled, for example, consolidation of data center operations. Whereas, in the past, a large number of physical computing machines were required to satisfy the computing needs of an enterprise, at present, far fewer physical computing resources are required. Instead, physical computing machines are being increasingly replaced by virtual machines.
An important aspect of managing virtualized computing environments is the ability to replicate virtual machines. Virtual machine replication is important because it enables, among other things, data center migration, software distribution, and disaster recovery. In VMware computing platforms, virtual machine replication and migration is performed utilizing a software component, referred to as a filter driver, which is installed on a source host computer. The filter driver captures virtual disk file updates (i.e., write operations to virtual disk files) that are generated by virtual machines executing on the source computer for transmission to one or more target computers. A target computer accepts the virtual disk file updates from the source host and applies them to its own file system. Such a process enables synchronization of virtual machines running on source and target computers.
As virtualized environments have become more and more pervasive in enterprise computing environments, several software vendors have developed offerings in the field. Indeed, several vendors have developed their own proprietary “hypervisor,” which is the system software component that makes virtualized computing possible. Many enterprises currently utilize a single vendor offering in order to support a virtualized computing environment. However, as mergers and consolidations occur in the business world, a need has arisen to support enterprise-wide virtualized computing in heterogeneous, multi-vendor (i.e., multi-hypervisor) environments. An aspect of such support is the ability to manage multi-hypervisor environments using a single, unified platform. Further, as virtual machine replication has become increasingly important, the ability to replicate virtual machines in a heterogeneous virtualized computing environment has surfaced as an important problem to be solved. Of special interest is the ability to replicate virtual machines in heterogeneous virtual computing environments that include servers running the VMware's hypervisor and the Microsoft's hypervisor, because these two are the two most widely used hypervisors.